Qt quick

您所在的位置:网站首页 地图 路径规划 Qt quick

Qt quick

2023-03-27 03:33| 来源: 网络整理| 查看: 265

在上个版本64.qt quick-qml使用高德地图插件实现V2版本(新增:位置搜索、路径规划、轨迹编辑等)_诺谦的博客-CSDN博客_qt高德地图插件基础下新增以下功能: 1、支持多线程请求、超时重试、软件重启续传功能、支持多个任务并行下载 2、自己实现的裁剪算法,实现地图任意多边形及任意顺时针逆时针裁剪、 3、离线加载地图并预览、并支持在原来支持的图层上再次放大 4、实现多个图层下载融合(比如高德卫星+标记) 5、实现区域查询,区域下载 6、自定义皮肤 7、跨平台、支持 Windows(mingw, msvc) Linux(桌面、嵌入式 ) 安卓等,不仅支持QML加载、也支持QWidget加载

体验地址

链接:https://pan.baidu.com/s/1PzJVZhyrzJbBoQrZCnUuvw?pwd=d836? 文件名:诺谦-地图引擎下载器v3试用版(支持跨平台,离线,在线,多任务下载,轨迹,标记等) 提取码:d836

b站演示传送门

Qt quick-QML地图引擎之v3版本(新增高德/谷歌在线/离线预览/多线程离线裁剪下载/区域查询/位置搜索/路径规划)_哔哩哔哩_bilibili

整体界面如下所示:

支持以下在线地图:

 支持不同皮肤样式:

 支持任意裁剪(五角星当时多放了一个点,没对称):

1.支持跨平台

如下图所示,以linux为例,同一套代码直接就编译完成!,为跨平台节省了一大半时间,只要下载管理写的好,就一切没问题

2.离线地图支持再次任意放大

如下图所示,原本下载的20级谷歌地图可以放大到22:

3.裁剪实现

使用接口方式,子类实现了两套不同算法提供给父类调用,矩形裁剪由于是对称的,所以效率最快,而多边形裁剪需要计算每个边.

// 多边形剪切 存储 class MapTileSaveTaskPolygonTailor : public MapTileSaveTask { protected:SolveType solve() override;void paint(QPainter *p) override;public:MapTileSaveTaskPolygonTailor(const QList& data,const QString& outputDir,const TileSpec& tile, const bool& isClip, const QVector& polygon):MapTileSaveTask(PolygonTailor, data, outputDir, tile, isClip){if(_isClip) {_tailorPolygon.resize(polygon.size());for(int i = 0 ; i < _tailorPolygon.length(); ++i) {_tailorPolygon[i].rx() = polygon[i].x() - tile.offsetX * 256;_tailorPolygon[i].ry() = polygon[i].y() - tile.offsetY * 256;// 目前算法实现边检测,未实现裁剪区域顶点与瓦片边缘重合情况(相对效率提高)if((_tailorPolygon[i].ry() == 0 || _tailorPolygon[i].ry() == 256)&& _tailorPolygon[i].rx() >= 0 && _tailorPolygon[i].rx() = -1 && _tailorPolygon[i].ry()


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3